Computing and electronic devices are often capable of wirelessly communicating with other devices or network controllers though which various resources are accessible. To facilitate communication in a wireless network, a device and network controller typically configure and negotiate parameters of a wireless link over which the devices communicate. When a wireless network has multiple client devices, the network controller may divide or allocate access to wireless network based on time. To do so, respective local clocks of the network controller and client devices of the wireless network must be synchronized to ensure each device communicates during its allocated time slot.
Synchronization of the local clocks of the devices is often accomplished by exchanging time information and calculating clock differences between given pairs of the devices. Calculating these clock differences, however, may rely on respective times of arrival for various packets that carry the time information between devices. In some cases, the exchange of time information and time of arrivals are complicated by multipath propagation, which results in reflections of a packet that also arrive at a receiving device. Thus, the receiving device may receive not only a direct transmission of the packet, but several reflected versions of the packet that arrive at different times and with varying signal strength. As such, determining an acceptable time of arrival for a packet in multipath environments is often prevented by the reception of multiple reflections of the same packet, which in turn degrades accuracy of clock synchronization and other time-based functions of the wireless network.